<template>
    <div>
        <div class="mui-numbox" data-numbox-min="1" :data-numbox-max="max">
            <button class="mui-btn mui-btn-numbox-minus" type="button" >-</button>
            <input class="mui-input-numbox" type="number" value="1" 
            @change="countChanged" ref="numbox"/>
            <button class="mui-btn mui-btn-numbox-plus" type="button">+</button>
        </div>
    </div>
</template>

<script> 
    import mui from '../../lib/mui/js/mui.min.js'
    export default {
        mounted(){
            //  mui在mui.init()中会自动初始化基本控件,但是 动态添加的Numbox组件需要手动初始化
            mui(".mui-numbox").numbox();
        },
        methods:{
            countChanged(){
                //每当文本框被修改的时候，立即把最新的数据，通过事件调用，传递给父组件
                this.$emit("getcount",parseInt(this.$refs.numbox.value))
            }
        },
        props:['max'],
        watch:{//属性监听,当真实获取数据时，max最初为空，获取完毕后，
        // max有了值numbox才能得到有效值，所以需要通过watch监听max的改变，
        // 使用numbox的JS API动态设置控件的data-numbox-max
            'max':function(newVal,oldVal){
                mui(".mui-numbox")
                .numbox()
                .setOption("max",newVal);
            }
        }
    }
</script>

<style lang="less">
 
</style>
